﻿using System.Collections.Generic;
using System.Runtime.Serialization;
using WCF.Common.GisService;

namespace WCF.Common
{
    /// <summary>表示一个数据服务资源参数结构情况对象。</summary>
    [DataContract(Namespace = Constrons.NameSpace)]
    [KnownType(typeof(ServiceLayer))]
    [KnownType(typeof(ServiceDirectory))]
    [KnownType(typeof(ServiceBase))]
    public class GisServiceConfig
    {
        /// <summary>
        /// 以默认参数构造一个数据服务资源参数结构情况对象的实例。
        /// </summary>
        public GisServiceConfig()
        {
            // 初始化可以自动加载的数据服务资源结构清单。
            this.AutoloadMapServices = new List<ServiceBase>();
            // 初始化数据服务资源结构清单。
            this.MapServices = new List<ServiceBase>();
            // 初始化可作为鹰眼使用的数据服务资源结构清单。
            this.OverviewMapServices = new List<ServiceBase>();
        }
        /// <summary>
        /// 获取或设置可以自动加载的数据服务资源结构清单。
        /// </summary>
        [DataMember]
        public List<ServiceBase> AutoloadMapServices { get; set; }
        /// <summary>
        /// 获取或设置数据服务资源结构清单
        /// </summary>
        [DataMember]
        public List<ServiceBase> MapServices { get; set; }
        /// <summary>
        /// 获取或设置可作为鹰眼使用的数据服务资源结构清单
        /// </summary>
        [DataMember]
        public List<ServiceBase> OverviewMapServices { get; set; }
    }
}
